﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000F65 RID: 3941
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class RogueMagicScepterInfo : IMessage<RogueMagicScepterInfo>, IMessage, IEquatable<RogueMagicScepterInfo>, IDeepCloneable<RogueMagicScepterInfo>, IBufferMessage
	{
		// Token: 0x17003204 RID: 12804
		// (get) Token: 0x0600B0AB RID: 45227 RVA: 0x001DDD8D File Offset: 0x001DBF8D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<RogueMagicScepterInfo> Parser
		{
			get
			{
				return RogueMagicScepterInfo._parser;
			}
		}

		// Token: 0x17003205 RID: 12805
		// (get) Token: 0x0600B0AC RID: 45228 RVA: 0x001DDD94 File Offset: 0x001DBF94
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return RogueMagicScepterInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17003206 RID: 12806
		// (get) Token: 0x0600B0AD RID: 45229 RVA: 0x001DDDA6 File Offset: 0x001DBFA6
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return RogueMagicScepterInfo.Descriptor;
			}
		}

		// Token: 0x0600B0AE RID: 45230 RVA: 0x001DDDAD File Offset: 0x001DBFAD
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMagicScepterInfo()
		{
		}

		// Token: 0x0600B0AF RID: 45231 RVA: 0x001DDDB5 File Offset: 0x001DBFB5
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMagicScepterInfo(RogueMagicScepterInfo other) : this()
		{
			this.magicItem_ = ((other.magicItem_ != null) ? other.magicItem_.Clone() : null);
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600B0B0 RID: 45232 RVA: 0x001DDDEA File Offset: 0x001DBFEA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMagicScepterInfo Clone()
		{
			return new RogueMagicScepterInfo(this);
		}

		// Token: 0x17003207 RID: 12807
		// (get) Token: 0x0600B0B1 RID: 45233 RVA: 0x001DDDF2 File Offset: 0x001DBFF2
		// (set) Token: 0x0600B0B2 RID: 45234 RVA: 0x001DDDFA File Offset: 0x001DBFFA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueMagicScepter MagicItem
		{
			get
			{
				return this.magicItem_;
			}
			set
			{
				this.magicItem_ = value;
			}
		}

		// Token: 0x0600B0B3 RID: 45235 RVA: 0x001DDE03 File Offset: 0x001DC003
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as RogueMagicScepterInfo);
		}

		// Token: 0x0600B0B4 RID: 45236 RVA: 0x001DDE11 File Offset: 0x001DC011
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(RogueMagicScepterInfo other)
		{
			return other != null && (other == this || (object.Equals(this.MagicItem, other.MagicItem) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600B0B5 RID: 45237 RVA: 0x001DDE44 File Offset: 0x001DC044
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.magicItem_ != null)
			{
				num ^= this.MagicItem.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600B0B6 RID: 45238 RVA: 0x001DDE80 File Offset: 0x001DC080
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600B0B7 RID: 45239 RVA: 0x001DDE88 File Offset: 0x001DC088
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600B0B8 RID: 45240 RVA: 0x001DDE91 File Offset: 0x001DC091
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.magicItem_ != null)
			{
				output.WriteRawTag(50);
				output.WriteMessage(this.MagicItem);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600B0B9 RID: 45241 RVA: 0x001DDEC4 File Offset: 0x001DC0C4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.magicItem_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.MagicItem);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600B0BA RID: 45242 RVA: 0x001DDF04 File Offset: 0x001DC104
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(RogueMagicScepterInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.magicItem_ != null)
			{
				if (this.magicItem_ == null)
				{
					this.MagicItem = new RogueMagicScepter();
				}
				this.MagicItem.MergeFrom(other.MagicItem);
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600B0BB RID: 45243 RVA: 0x001DDF58 File Offset: 0x001DC158
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600B0BC RID: 45244 RVA: 0x001DDF64 File Offset: 0x001DC164
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 50U)
				{
					this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
				}
				else
				{
					if (this.magicItem_ == null)
					{
						this.MagicItem = new RogueMagicScepter();
					}
					input.ReadMessage(this.MagicItem);
				}
			}
		}

		// Token: 0x04004796 RID: 18326
		private static readonly MessageParser<RogueMagicScepterInfo> _parser = new MessageParser<RogueMagicScepterInfo>(() => new RogueMagicScepterInfo());

		// Token: 0x04004797 RID: 18327
		private UnknownFieldSet _unknownFields;

		// Token: 0x04004798 RID: 18328
		public const int MagicItemFieldNumber = 6;

		// Token: 0x04004799 RID: 18329
		private RogueMagicScepter magicItem_;
	}
}
